package main

import "fmt"

func main() {
	//1 len：用来求长度 比如string、array、slice、map、channel
	//2 new：用来分配内存，主要用来分配值类型，比如int、float32、struct... 返回的是指针
	num1 := 100
	fmt.Printf("num1的类型%T num1的值=%v num1的地址是%v\n", num1, num1, &num1)

	num2 := new(int) //*int
	//num2的类型%T =>*int
	//num2的值 = 地址
	//num2的地址 = 地址
	//num2指向的值=100
	*num2 = 100
	fmt.Printf("num2的类型%T num2的值=%v num2的地址%v num2这个指针指向的值=%v\n", num2, num2, &num2, *num2)
	//3 make：用来分配内存，主要用来分配引用类型，比如channel、map、slice。后面讲解
}
